#ifndef _LOG_H
#define _LOG_H

#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include <time.h>

#include <unistd.h>
#include <pthread.h>
#include <semaphore.h>

/*Tipos de mensaje*/
#define ERROR    	0
#define WARNING  	1
#define INFO     	2
#define DEBUG  		3
#define CONSOLA		4
#define CONSOLAFULL	5

/*Tipos de retorno (Lo pongo aca porque no se donde meterlo)*/
#define FIN_OK 		0
#define FIN_WARNING	1
#define FIN_ERROR	2

#define ARCHIVO_LOG "./log.txt"
#define TAM_MAX		1024
#define PROCESO "[Nombre del Proceso]" /*Modificar para cada proceso distinto*/
#define ERROR_FATAL_LOG "Error con el archivo\n"

#define TIEMPO_SELECT	3
#define TIEMPO_SLEEP	2
#define RESP_TRUE		1
#define RESP_FALSE		0

int imprimirLogSinSem(char tipo, const char *cadena, const char *cadena1);
int imprimirLog(char tipo, const char *cadena, const char *cadena1);
int imprimirLogNumerico(char tipo, const char *cadena, int numero);
int tiempo(char *);
void finalizarPRAID();

#endif
